System and Method for Redirecting Message Attachments Between a Host System and a Mobile Data Communication Device

ABSTRACT

In one embodiment, a mobile data communication device operable to process redirected data items from a messaging system, wherein the data items include message attachments. The mobile data communication device includes one or more of the following: a structure for generating a command towards a redirector component associated with a messaging system to initiate redirection of user data items over a wireless network for a user associated with the mobile data communication device; a structure for receiving at least a portion of a data item redirected from the messaging system over the wireless network; and a structure for generating a request towards the redirector component for more of the data item.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part of U.S. patent applicationSer. No. 09/087,632, titled “System and Method for Pushing Informationfrom a Host System to a Mobile Data Communication Device,” filed on May29, 1998, and U.S. patent application Ser. No. 09/545,963 filed on Apr.10, 2000. This application is also related to the following co-pending,and commonly-owned, U.S. patent applications, all of which are relatedto Ser No. 09/087,632, U.S. patent applications Ser. No. 09/401,868,Ser. No. 09/528,495, Ser. No. 09/545,962, and Ser. No. 09/649,755, allof which are hereby incorporated into the present application byreference.

BACKGROUND

1. Field of the Invention

The present invention is directed toward the field of replicating andredirecting information from a host system where the information isnormally stored to a mobile data communication device. In particular,the system and method of the present invention provide an event-drivenredirection computer program (“redirector program”) operating at thehost system, which, upon sensing a particular user-defined event hasoccurred, redirects user-selected data items from the host system to theuser's mobile data communication device. Upon sensing a seconduser-defined event has occurred, the redirector program may discontinueredirecting information. The mobile data communication device ispreferably coupled to the host system via a wireless network and one ormore landline networks. Due to the bandwidth limitations of wirelessnetworks, only a portion of a user-selected data item is generallyredirected to the user's mobile device, with the user given the optionof then retrieving the entire data item (or some other portion of thedata item) from the host system.

The invention also provides a system and method for redirecting messageattachments between the host system and the mobile data communicationdevice. This system and method are particularly useful for mobiledevices, such as pagers, PDAs, cellular telephones, etc., that havelimited memory capacity and thus may have difficulty processingattachment files.

2. Description of the Related Art

Present systems and methods for replicating (or redirecting) informationfrom a host system to a user's mobile data communication device aretypically “synchronization” systems in which the user's data items arewarehoused (or stored) at the host system for an indefinite period oftime and then transmitted in bulk to the mobile device only in responseto a user request. In these types of systems and methods, whenreplication of the warehoused data items to the mobile device isdesired, the user typically places the mobile device in an interfacecradle that is electrically connected to the host system via some formof local, dedicated communication. Software executing on the mobiledevice then transmits commands via the local communications link to thehost system to cause the host to begin transmitting the user's dataitems for storage in a memory bank of the mobile device.

In these known synchronization schemes, the mobile unit “pulls” thewarehoused information from the host system in a batch each time theuser desires to replicate information between the two devices.Therefore, the two systems (host and mobile) only maintain the same dataitems after a user-initiated command sequence that causes the mobiledevice to download the data items from the host system. A generalproblem with these synchronization systems is that the only time thatthe user data items are replicated between the host system and themobile data communication device is when the user commands the mobiledevice to download or pull the user data from the host system. Fiveminutes later a new message could be sent to the user, but the userwould not receive that message until the next time the user fetches theuser data items. Thus, a user may fail to respond to an emergency updateor message because the user only periodically synchronizes the system,such as once per day. Other problems with these systems include: (1) theamount of data to be reconciled between the host and the mobile devicecan become large if the user does not “synchronize” on a daily or hourlybasis, leading to bandwidth difficulties, particularly when the mobiledevice is communicating via a wireless packet-switched network; and (2)reconciling large amounts of data, as can accrue in these batch-modesynchronization systems, can require a great deal of communicationbetween the host and the mobile device, thus leading to a more complex,costly and energy-inefficient system.

A more automated, continuous, efficient and reliable system of ensuringthat user data items are replicated at the user's mobile device istherefore needed.

There remains an additional need for such a system and method thatprovides flexibility in the types and quantities of user data items thatare pushed from the host system to the mobile data communication deviceand that also provides flexibility in the configuration and types ofevents that can serve to trigger the redirection of the user data items.

There remains yet an additional need for such a system and method thatcan operate locally on a user's desktop PC or at a distance via anetwork server.

There remains still another need for such a system and method thatprovides for secure, transparent delivery of the user-selected dataitems from the host system to the mobile device.

There remains an additional need for such a system and method in whichthe user is provided with a flexible means of processing messageattachments that may be too large or incompatible with the configurationof the mobile device.

SUMMARY

The present invention overcomes the problems noted above and satisfiesthe needs in this field for a system and method of pushing user-selecteddata items from a host system to a user's mobile data communicationdevice upon detecting the occurrence of one or more user-defined eventtriggers. As used in this application, the term host system refers tothe computer where the redirector software is operating. In thepreferred embodiment of the present invention, the host system is auser's desktop PC, although, alternatively, the host system could be anetwork server connected to the user's PC via a local-area network(“LAN”), or could be any other system that is in communication with theuser's desktop PC.

A redirector program operating at the host system enables the user toredirect or mirror certain user-selected data items (or parts of dataitems) from the host system to the user's mobile data communicationdevice upon detecting that one or more user-defined triggering eventshas occurred. (In this application the terms “information,” “dataitems,” “messages,” and “datagrams” are used interchangeably to mean aninformation object that is received at the host system and redirected tothe mobile device.) Also operating at the host system are varioussub-systems that can be configured to create triggering events, such asa screen saver sub-system or a keyboard sub-system, as well assub-systems for repackaging the user's data items for transparentdelivery to the mobile data device, such as a TCP/IP sub-system or oneor more E-Mail sub-systems. Other sub-systems for creating triggeringevents and repackaging the user's data items could also be present atthe host system. The host system also includes a primary memory storewhere the user's data items are normally stored.

Using the redirector program, the user can select certain data items forredirection, such as E-mail messages, calendar events, meetingnotifications, address entries, journal entries, personal reminders etc.Having selected the data items for redirection, the user can thenconfigure one or more event triggers to be sensed by the redirectorprogram to initiate redirection of the user data items. Theseuser-defined trigger points (or event triggers) include external events,internal events and networked events. Examples of external eventsinclude: receiving a message from the user's mobile data communicationdevice to begin redirection; receiving a similar message from someexternal computer; sensing that the user is no longer in the vicinity ofthe host system; or any other event that is external to the host system.Internal events could be a calendar alarm, screen saver activation,keyboard timeout, programmable timer, or any other user-defined eventthat is internal to the host system. Networked events are user-definedmessages that are transmitted to the host system from another computercoupled to the host system via a network to initiate redirection. Theseare just some of the examples of the types of user-defined events thatcan trigger the redirector program to push data items from the host tothe mobile device. Although in the preferred embodiment it isanticipated that the configuration that specifies which data items willbe redirected and in what form will be set at the host system, it iswithin the scope of this invention that such configuration may be set ormodified through data sent from the mobile communications device.

In addition to the functionality noted above, the redirector programprovides a set of software-implemented control functions for determiningthe type of mobile data communication device and its address, forprogramming a preferred list of message types that are to be redirected,and for determining whether the mobile device can receive and processcertain types of message attachments, such as word processor or voiceattachments. The determination of whether a particular mobile device canreceive and process attachments is preferably initially configured bythe user of that mobile device at the host system. This configurationcan be altered on a global, per message basis or per device basis bytransmitting a command message from the mobile device to the hostsystem. If the redirector is configured so that the mobile data devicecannot receive and process word processor or voice attachments, then theredirector routes these attachments to an external machine that iscompatible with the particular attachment, such as an attached printeror networked fax machine or telephone. Other types of attachments couldbe redirected to other types of external machines in a similar fashion,depending upon the capabilities of the mobile device. For example, if auser is traveling and receives a message with an attachment that theuser's mobile device can process or display, the user may from a mobilecommunications device send a command message to the host systemindicating that that attachment is to be sent to a fax machine at ahotel where the user will be spending the evening. This enables the userto receive important E-mail attachments as long as the host system isprovided with sufficient information about the destination where theattachment is to be forwarded.

Once an event has triggered redirection of the user data items, the hostsystem then repackages these items in a manner that is transparent tothe mobile data communication device, so that information on the mobiledevice appears similar to information on the user's host system. Thepreferred repackaging method includes wrapping the user data items in anE-mail envelope that corresponds to the address of the mobile datacommunication device, although, alternatively, other repackaging methodscould be used with the present invention, such as special-purpose TCP/IPwrapping techniques, or other methods of wrapping the user selected dataitems. The repackaging preferably results in E-mail messages generatedby the user from the mobile device to be transmitted from the hostsystem, thus enabling the user to appear to have a single E-mailaddress, such that the recipients of messages sent from the mobilecommunications device do not know where the user was physically locatedwhen the message was first sent. The repackaging also permits bothmessages to the mobile device and sent from the mobile device to beencrypted and decrypted as well as compressed and decompressed.

In an alternative system and method, the redirector program executes ona network server, and the server is programmed to detect numerousredirection event triggers over the network from multiple user desktopcomputers coupled to the server via a LAN. The server can receiveinternal event triggers from each of the user desktops via the network,and can also receive external event triggers, such as messages from theusers' mobile data communication devices. In response to receiving oneof these triggers, the server redirects the user's data items to theproper mobile data communication device. The user data items andaddressing information for a particular mobile device can be stored atthe server or at the user's PC. Using this alternative configuration,one redirector program can serve a plurality of users. This alternativeconfiguration could also include an internet- or intranet-basedredirector program that could be accessible through a secure webpage orother user interface. The redirector program could be located on anInternet Service Provider's system and accessible only through theInternet.

In another alternative configuration of the present invention, aredirector program operates at both the host system and at the user'smobile data communication device. In this configuration, the user'smobile device operates similarly to the host system described below, andis configured in a similar fashion to push certain user-selected dataitems from the mobile device to the user's host system (or some othercomputer) upon detecting an event trigger at the mobile device. Thisconfiguration provides two-way pushing of information from the host tothe mobile device and from the mobile device to the host.

The primary advantage of the present invention is that it provides asystem and method for triggering the continuous and real-timeredirection of user-selected data items from a host system to a mobiledata communication device. Other advantages of the present inventioninclude: (1) flexibility in defining the types of user data to redirect,and in defining a preferred list of message types that are to beredirected or preferred senders whose messages are to be redirected; (2)flexibility in configuring the system to respond to numerous internal,external and networked triggering events; (3) transparent repackaging ofthe user data items in a variety of ways such that the mobile datacommunication device appears as though it were the host system; (4)integration with other host system components such as E-mail, TCP/IP,keyboard, screen saver, webpages and certain programs that can eithercreate user data items or be configured to provide trigger points; (5)the ability to operate locally on a user's desktop system or at adistance via a network server; (6) the ability to receive, process, andmanage attachment redirection; and (7) dynamically change anddynamically re-route attachment redirection.

These are just a few of the many advantages of the present invention, asdescribed in more detail below. As will be appreciated, the invention iscapable of other and different embodiments, and its several details arecapable of modifications in various respects, all without departing fromthe spirit of the invention. Accordingly, the drawings and descriptionof the preferred embodiments set forth below are to be regarded asillustrative in nature and not restrictive.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention satisfies the needs noted above as will becomeapparent from the following description when read in conjunction withthe accompanying drawings wherein:

FIG. 1 is a system diagram showing the redirection of user data itemsfrom a user's desktop PC (host system) to the user's mobile datacommunication device, where the redirector software is operating at theuser's desktop PC.

FIG. 2 is a system diagram showing the redirection of user data itemsfrom a network server (host system) to the user's mobile datacommunication device, where the redirector software is operating at theserver.

FIG. 3 is a block diagram showing the interaction of the redirectorsoftware with other components of the host system in FIG. 1 (the user'sdesktop PC) to enable the pushing of information from the host system tothe user's mobile data communication device.

FIG. 4 is a flow chart showing the steps carried out by the redirectorsoftware operating at the host system.

FIG. 5 is a flow chart showing the steps carried out by the mobile datacommunication device to interface with the redirector software operatingat the host system.

FIG. 6 sets forth a system for redirecting messages having attachmentsbetween a host system and a mobile device.

FIG. 7 is a flow diagram setting forth a method of redirecting a messageattachment to an attachment displayer that is identified by the mobiledevice.

FIG. 8 is a flow diagram setting forth a method of redirecting a messageattachment to an attachment displayer that is identified by the hostsystem.

FIG. 9 is alternative system configuration of FIG. 6.

DETAILED DESCRIPTION OF THE DRAWINGS

Referring now to the drawings, FIG. 1 is an example system diagramshowing the redirection of user data items (such as message A or C) froma user's office PC (host system) 10 to the user's mobile datacommunication device 24, where the redirector software (program) 12 isoperating at the user's PC. Message A in FIG. I represents an internalmessage sent from desktop 26 to the user's host system 10 via LAN 14.Message C in FIG. 1 represents an external message from a sender that isnot directly connected to LAN 14, such as the user's mobile datacommunication device 24, some other user's mobile device (not shown), orany user connected to the Internet 18. Message C also represents acommand message from the user's mobile data communication device 24 tothe host system 10. As described in more detail in FIG. 3, the hostsystem 10 preferably includes, along with the typical hardware andsoftware associated with a workstation or desktop computer, theredirector program 12, a TCP/IP subsystem 42, a primary message store40, an E-mail subsystem 44, a screen saver subsystem 48, and a keyboardsubsystem 46.

In FIG. 1, the host system 10 is the user's desktop system, typicallylocated in the user's office. The host system 10 is connected to a LAN14, which also connects to other computers 26, 28 that may be in theuser's office or elsewhere. The LAN 14, in turn, is connected to a widearea network (“WAN”) 18, preferably the Internet, which is defined bythe use of the Transmission Control Protocol/Internet Protocol(“TCP/IP”) to exchange information, but which, alternatively could beany other type of WAN. The connection of the LAN 14 to the WAN 18 is viahigh bandwidth link 16, typically a T1 or T3 connection. The WAN 18 inturn is connected to a variety of gateways 20, via connections 32. Agateway forms a connection or bridge between the WAN 18 and some othertype of network, such as an RF wireless network, cellular network,satellite network, or other synchronous or asynchronous land-lineconnection.

In the example of FIG. 1, a wireless gateway 20 is connected to theInternet for communicating via wireless link 22 to a plurality ofwireless mobile data communication devices 24. Also shown in FIG. I ismachine 30, which could be a FAX machine, a printer, a system fordisplaying images (such as video), a cellular phone, or a machinecapable of processing and playing audio files, such as a voice mailsystem. Machine 30 is also referred to herein as an attachmentdisplayer. The present invention includes the ability to redirectcertain message attachments to such an external machine 30 if theredirector program configuration data reflects that the mobile device 24cannot receive and process the attachments, or if the user has specifiedthat certain attachments are not to be forwarded to mobile device 24,even if such device can process those attachments.

For example, consider an E-mail sent to a user that includes threeattachments—a word processing document, a video clip and an audio clip.The redirection program could be configured to send the text of theE-mail to the remote device, to send the word processing document to anetworked printer located near the user, to send the video clip to astore accessible through a secure connection through the internet and tosend the audio clip to the user's voice mail system. This example is notintended to limit the breadth and scope of the invention, but rather toillustrate the variety of possibilities embodied in the redirectionconcept. The attachment redirection capabilities of the presentinvention are further described below with reference to FIGS. 6-8.

The preferred mobile data communication device 24 is a hand-held two-waywireless 5 paging computer, a wirelessly enabled palm-top computer, amobile telephone with data messaging capabilities, or a wirelesslyenabled laptop computer, but could, alternatively be other types ofmobile data communication devices capable of sending and receivingmessages via a network connection 22. Although it is preferable for thesystem to operate in a two-way communications mode, certain aspects ofthe invention could be beneficially used in a “one and one-half” oracknowledgment paging environment, or even with a one-way paging system.The mobile data communication device 24 includes software programinstructions that work in conjunction with the redirector program 12 toenable the seamless, transparent redirection of user-selected dataitems. FIG. 4 describes the basic method steps of the redirector program12, and FIG. 5 describes the steps of the corresponding programoperating at the mobile device 24.

In an alternative embodiment of the present invention, not explicitlyshown in the drawings, the mobile device 24 also includes a redirectorprogram. In this embodiment, user selected data items can be replicatedfrom the host to the mobile device and vice versa. The configuration andoperation of the mobile device 24 having a redirector program is similarto that described herein with respect to FIGS. 1-8.

A user of the present invention can configure the redirector program 12to push certain user-selected data items to the user's mobile datacommunication device 24 when the redirector 12 detects that a particularuser-defined event trigger (or trigger point) has taken place. When asecondary user-defined event trigger (or trigger point) occurs, whichcould be the same as the initial event trigger or could be a differentevent, the system may subsequently stop redirection. User-selected dataitems preferably include E-mail messages, calendar events, meetingnotifications, address entries, journal entries, personal alerts,alarms, warnings, stock quotes, news bulletins, etc., but could,alternatively, include any other type of message that is transmitted tothe host system 10, or that the host system 10 acquires through the useof intelligent agents, such as data that is received after the hostsystem 10 initiates a search of a database or a website or a bulletinboard. In some instances, only a portion of the data item is transmittedto the mobile device 24 in order to minimize the amount of datatransmitted via the wireless network 22. In these instances, the mobiledevice 24 can optionally send a command message to the host system toreceive more or all of the data item if the user desires to receive it.

User-defined event triggers that can be detected by the redirectorprogram 12 in the preferred embodiment include external events, internalevents and networked events. External events preferably include: (1)receiving a command message (such as message C) from the user's mobiledata communication device to begin redirection, or to execute some othercommand at the host, such as a command to enable the preferred listmode, or to add or subtract a particular sender from the preferred list;(2) receiving a similar message from some external computer; and (3)sensing that the user is no longer in the vicinity of the host system;although, alternatively, an external event can be any other detectableoccurrence that is external to the host system. Internal events could bea calendar alarm, screen saver activation, keyboard timeout,programmable timer, or any other user-defined event that is internal tothe host system. Networked events are user-defined messages that aretransmitted to the host system from another computer coupled to the hostsystem via a network to initiate redirection. These are just some of theevents that could be used with the present invention to initiatereplication of the user-selected data items from the host system 10 tothe mobile device 24.

FIG. 1 shows an E-mail message A being communicated over LAN 14 fromcomputer 26 to the user's desktop system 10 (also shown in FIG. 1 is anexternal message C, which could be an E-mail message from an Internetuser, or could be a command message from the user's mobile device 24).Once the message A (or C) reaches the primary message store of the hostsystem 10, it can be detected and acted upon by the redirection software12. The redirection software 12 can use many methods of detecting newmessages. The preferred method of detecting new messages is usingMicrosoft's® Messaging API (MAPI), in which programs, such as theredirector program 12, register for notifications or ‘advise synes’ whenchanges to a mailbox take place. Other methods of detecting new messagescould also be used with the present invention.

Assuming that the redirector program 12 is activated, and has beenconfigured by the user (either through the sensing of an internal,network or external event) to replicate certain user data items(including messages of type A or C) to the mobile device 24, when themessage A is received at the host system 10, the redirector program 12detects its presence and prepares the message for redirection to themobile device 24. In preparing the message for redirection, theredirector program 12 could compress the original message A, couldcompress the message header, or could encrypt the entire message A tocreate a secure link to the mobile device 24.

Also programmed into the redirector 12 is the address of the user'smobile data communication device 24, the type of device, and whether thedevice 24 can accept certain types of attachments, such as wordprocessing or voice attachments. If the user's type of mobile devicecannot accept these types of attachments, then the redirector 12 can beprogrammed to route the attachments to a fax or voice number where theuser is located using an attached fax or voice machine 30 or other typeof attachment displayer.

The redirector may also be programmed with a preferred list mode that isconfigured by the user either at the host system 10, or remotely fromthe user's mobile data communication device by transmitting a commandmessage C. The preferred list contains a list of senders (other users)whose messages are to be redirected or a list of message characteristicsthat determine whether a message is to be redirected. If activated, thepreferred list mode causes the redirector program 12 to operate like afilter, only redirecting certain user data items based on whether thedata item was sent from a sender on the preferred list or has certainmessage characteristics that if present will trigger or suppressredirection of the message. In the example of FIG. 1, if desktop system26 was operated by a user on the preferred list of host system 10, andthe preferred list option was activated, then message A would beredirected. If, however, desktop 26 was operated by a user not on thehost system's preferred list, then message A would not be redirected,even if the user of the host system had configured the redirector topush messages of type A. The user of the host system 10 can configurethe preferred list directly from the desktop system, or, alternatively,the user can then send a command message (such as C) from the mobiledevice 24 f to the desktop system 10 to activate the preferred listmode, or to add or delete certain senders or message characteristicsfrom the preferred list that was previously configured. It should beappreciated that a redirection program could combine messagecharacteristics and preferred sender lists to result in a morefinely-tuned filter. Messages marked as low priority or that are simplereturn receipts or message read receipts, for example, could always besuppressed from redirection while messages from a particular senderwould always be redirected.

After the redirector has determined that a particular message should beredirected, and it has prepared the message for redirection, theredirector software 12 then sends the message A to a secondary memorystore located in the mobile device 24, using whatever means arenecessary. In the preferred embodiment this method is to send themessage A back over the LAN 14, WAN 18, and through the wireless gateway20 to the mobile data communication device 24. In doing so, theredirector preferably repackages message A as an E-mail with an outerenvelope B that contains the addressing information of the mobile device24, although alternative repackaging techniques and protocols could beused, such as a TCP/IP repackaging and delivery method (most commonlyused in the alternative server configuration shown in FIG.2). Thewireless gateway 20 requires this outer envelope information B in orderto know where to send the redirected message A. Once the message (A inB) is received by the mobile device 24, the outer envelope B is removedand the original message A is placed in the secondary memory storewithin the mobile device 24. By repackaging and removing the outerenvelope in this manner, the present invention causes the mobilecomputer 24 to appear to be at the same physical location as the hostsystem 10, thus creating a transparent system.

In the case where message C is representative of an external messagefrom a computer on the Internet 18 to the host system 10, and the host10 has been configured to redirect messages of type C, then in a similarmanner to message A, message C would be repackaged with an outerenvelope B and transmitted to the user's mobile device 24. In the casewhere message C is representative of a command message from the user'smobile device 24 to the host system 10, the command message C is notredirected, but is acted upon by the host system 10.

If the redirected user data item is an E-mail message, as describedabove, the user at the mobile device 24 sees the original subject,sender's address, destination address, carbon copy and blind carboncopy. When the user replies to this message, or when the user authors anew message, the software operating at the mobile device 24 adds asimilar outer envelope to the reply message (or the new message) tocause the message to be routed first to the user's host system 10, whichthen removes the outer envelope and redirects the message to the finaldestination, such as back to computer 26. In the preferred embodiment,this results in the outgoing redirected message from the user's hostsystem 10 being sent using the E-mail address of the host mailbox,rather than the address of the mobile device, so that it appears to therecipient of the message that the message originated from the user'sdesktop system 10 rather than the mobile data communication device. Anyreplies to the redirected message will then be sent to the desktopsystem 10, which if it is still in redirector mode, will repackage thereply and re-send it to the user's mobile data device, as describedabove.

FIG. 2 is an alternative system diagram showing the redirection of userdata items from a network server 11 to the user's mobile datacommunication device 24, where the redirector software 12 is operatingat the server 11. This configuration is particularly advantageous foruse with message servers such as Microsoft's® Exchange Server, which isnormally operated so that all user messages are kept in one centrallocation or mailbox store on the server instead of in a store withineach user's desktop PC. This configuration has the additional advantageof allowing a single system administrator to configure and keep track ofall users having messages redirected. If the system includes encryptionkeys, these too can be kept at one place for management and updatepurposes.

In this alternative configuration, server 11 preferably maintains a userprofile for each user's desktop system 10, 26, 28, including informationsuch as whether a particular user can have data items redirected, whichtypes of message and information to redirect, how to process varioustypes of message attachments, what events will trigger redirection, theaddress of the users' mobile data communication device 24, the type ofmobile device, and the user's preferred list, if any. The event triggersare preferably detected at the user's desktop system 10, 26, 28 and canbe any of the external, internal or network events listed above. Thedesktop systems 10, 26, s 28 preferably detect these events and thentransmit a message to the server computer 11 via LAN 14 to initiateredirection, or to subsequent halt redirection. Although the user dataitems are preferably stored at the server computer II in thisembodiment, they could, alternatively, be stored at each user's desktopsystem 10, 26, 28, which would then transmit them to the server computer11 after an event has triggered redirection.

As shown in FIG. 2, desktop system 26 generates a message A that istransmitted to and stored at the host system 11, which is the networkserver operating the redirector program 12. The message A is for desktopsystem 10, but in this embodiment, user messages are stored at thenetwork server 11. When an event occurs at desktop system 10, an eventtrigger is generated and transmitted to the network server 11, whichthen determines who the trigger is from, whether that desktop hasredirection capabilities, and if so, the server (operating theredirector program) uses the stored configuration information toredirect message A to the mobile computer 24 associated with the user ofdesktop system 10.

As described above with reference to FIG. 1, message C could be either acommand message from a user's mobile data communication device 24, or itcould be a message from an external computer, such as a computerconnected to the Internet 18. If the message C is from an Internetcomputer to the user's desktop system 10, and the user has redirectioncapabilities, then the server 11 detects the message C, repackages itusing electronic envelope B, and redirects the repackaged message (C inB) to the user's mobile device 24. If the message C is a command messagefrom the user's mobile device 24, then the server 11 simply acts uponthe command message.

Turning now to FIG. 3, a block diagram showing the interaction of theredirector software 12 with additional components of the host system 10of FIG. 1 (the desktop PC) to enable more frilly the pushing ofinformation from the host system 10 to the user's mobile datacommunication device 24 is set forth. These additional components areillustrative of the type of event-generating systems that can beconfigured and used with the redirector software 12, and of the type ofrepackaging systems that can be used to interface with the mobilecommunication device 24 to make it appear transparent to the user.

The desktop system 10 is connected to LAN 14, and can send and receivedata, messages, signals, event triggers, etc., to and from other systemsconnected to the LAN 14 and to external networks 18, 22, such as theInternet or a wireless data network, which are also coupled to the LAN14. In addition to the standard hardware, operating system, andapplication programs associated with a typical microcomputer orworkstation, the desktop system 10 includes the redirector program 12, aTCP/IP sub-system 42, an E-mail sub-system 44, a primary data storagedevice 40, a screen saver sub-system 48, and a keyboard sub-system 46.The TCP/IP and E-mail subsystems 42, 44 are examples of repackagingsystems that can be used to achieve the transparency of the presentinvention, and the screen saver and keyboard sub-systems 46, 48 areexamples of event generating systems that can be configured to generateevent messages or signals that trigger redirection of the user selecteddata items.

The method steps carried out by the redirector program 12 are describedin more detail in FIG. 4. The basic functions of this program are: (1)configure and setup the user-defined event trigger points that willstart redirection; (2) configure the types of user data items forredirection and optionally configure a preferred list of senders whosemessages are to be redirected; (3) configure the type and capabilitiesof the user's mobile data communication device, including theconfiguration of attachment handling and type recognition; (4) receivemessages and signals from the repackaging systems and the eventgenerating systems; and (5) command and control the redirection of theuser-selected data items to the mobile data communication device via therepackaging systems. Other functions not specifically enumerated couldalso be integrated into this program.

The E-Mail sub-system 44 is the preferred link to repackaging theuser-selected data items for transmission to the mobile datacommunication device 24, and preferably uses industry standard mailprotocols, such as SMTP, POP, IMAP, MIME and RFC-822, to name but a few.The E-Mail sub-system 44 can receive messages A from external computerson the LAN 14, or can receive messages C from some external network suchas the Internet 18 or a wireless data communication network 22, andstores these messages in the primary data store 40. Assuming that theredirector 12 has been triggered to redirect messages of this type, theredirector detects the presence of any new messages and instructs theE-Mail system 44 to repackage the message by placing an outer wrapper Babout the original message A (or C), and by providing the addressinginformation of the mobile data communication device 24 on the outerwrapper B. As noted above, this outer wrapper B is removed by the mobiledevice 24, and the original message A (or C) is then recovered, thusmaking the mobile device 24 appear to be the desktop system 10.

In addition, the E-Mail sub-system 44 receives messages back from themobile device 24 having an outer wrapper with the addressing informationof the desktop system 10, and strips this information away so that themessage can be routed to the proper sender of the original message A (orC). The E-Mail sub-system also receives command messages C from themobile device 24 that are directed to the desktop system 10 to triggerredirection or to carry out some other function. The functionality ofthe E-Mail sub-system 44 is controlled by the redirector program 12.

The TCP/IP sub-system 42 is an alternative repackaging system. Itincludes all of the functionality of the E-Mail sub-system 44, butinstead of repackaging the user-selected data items as standard E-mailmessages, this system repackages the data items using special-purposeTCP/IP packaging techniques. This type of special-purpose sub-system isuseful in situations where security and improved speed are important tothe user. The provision of a special-purpose wrapper that can only beremoved by special software on the mobile device 24 provides the addedsecurity, and the bypassing of E-mail store and forward systems canimprove speed and real-time delivery.

As described previously, the present invention can be triggered to begin(or end) redirection upon detecting numerous external, internal andnetworked events, or trigger points. Examples of external eventsinclude: receiving a command message from the user's mobile datacommunication device 24 to begin redirection; receiving a similarmessage from some external computer; sensing that the user is no longerin the vicinity of the host system, such as by using the output of adigital camera, or by sensing the proximity of the user's mobile deviceusing a wireless connection; or any other event that is external to thehost system. Internal events could be a calendar alarm, screen saveractivation, keyboard timeout, programmable timer, or any otheruser-defined event that is internal to the host system. Networked eventsare user-defined messages that are transmitted to the host system fromanother computer (not the mobile device) that is connected to the hostsystem via a network to initiate redirection.

The screen saver and keyboard sub-systems 46, 48 are examples of systemsthat are capable of generating internal events. Functionally, theredirector program 12 provides the user with the ability to configurethe screen saver and keyboard systems so that under certain conditionsan event trigger will be generated that can be detected by theredirector 12 to start (or stop) the redirection process. For example,the screen saver system can be configured so that when the screen saveris activated, after, for example, 10 minutes of inactivity on thedesktop system, an event trigger is transmitted to the redirector 12,which starts redirecting the previously selected user data items. Whenthe screen saver becomes activated, for whatever reason, a second eventtrigger is generated in order to halt redirection. In a similar mannerthe keyboard sub-system can be configured to generate event triggerswhen no key has been depressed for a particular period of time, thusindicating that redirection should commence, and then to subsequentlygenerate another trigger when a key is depressed to stop redirection.These are just two examples of the numerous application programs andhardware systems internal to the host system 10 that can be used togenerate internal event triggers.

FIGS. 4 and 5, set forth, respectively, flow charts showing the stepscarried out by the redirector software 12 operating at the host system10, and the steps carried out by the mobile data communication device 24in order to interface with the host system. Turning first to FIG. 4, atstep 50, the redirector program 12 is started and initially configured.The initial configuration of the redirector 12 includes: (1) definingthe event triggers that the user has determined will triggerredirection; (2) selecting the user data items for redirection; (3)selecting the repackaging sub-system, either standard E-Mail, orspecial-purpose technique; (4) selecting the type of data communicationdevice, indicating whether and what type of attachments the device iscapable of receiving and processing, and inputting the address of themobile device; and (5) configuring the preferred list of user selectedsenders whose messages are to be redirected.

FIG. 4 sets forth the basic steps of the redirector program 12 assumingit is operating at a desktop system 10, such as shown in FIG. 1. If theredirector 12 is operating at a network server 11, as shown in FIG. 2,then additional configuration steps may be necessary to enableredirection for a particular desktop system 10, 26, 28 connected to theserver, including: (1) setting up a profile for the desktop systemindicating its address, events that will trigger redirection, and thedata items that are to be redirected upon detecting an event; (2)maintaining a storage area at the server for the data items; and (3)storing the type of data communication device to which the desktopsystem's data items are to be redirected, whether and what type ofattachments the device is capable of receiving and processing, and theaddress of the mobile device.

Once the redirector program is configured 50, the trigger points (orevent triggers) are enabled at step 52. The program 12 then waits 56 formessages and signals 54 to begin the redirection process. A messagecould be an E-Mail message or some other user data item than may havebeen selected for redirection, and a signal could be a trigger signal,or could be some other type of signal that has not been configured as anevent trigger. When a message or signal is detected, the programdetermines 58 whether it is one of the trigger events that has beenconfigured by the user to signal redirection. If so, then at step 60 atrigger flag is set, indicating that subsequently received user dataitems (in the form of messages) that have been selected for redirectionshould be pushed to the user's mobile data communication device 24.

If the message or signal 54 is not a trigger event, the program thendetermines at steps 62, 68 and 66 whether the message is, respectively,a system alarm 62, an E-Mail message 64, or some other type ofinformation that has been selected for redirection. If the message orsignal is none of these three items, then control returns to step 56,where the redirector waits for additional messages 54 to act upon. If,however the message is one of these three types of information, then theprogram 12 determines, at step 68, whether the trigger flag has beenset, indicating that the user wants these items redirected to the mobiledevice If the trigger flag is set, then at step 70, the redirector 12causes the repackaging system (E-Mail or TCP/IP) to add the outerenvelope to the user data item, and at step 72 the repackaged data itemis then redirected to the user's mobile data communication device 24 viaLAN 14, WAN 18, wireless gateway 20 and wireless network 22. Controlthen returns to step 56 where the program waits for additional messagesand signals to act upon. Although not shown explicitly in FIG. 4, afterstep 68, the program could, if operating in the preferred list mode,determine whether the sender of a particular data item is on thepreferred list, and if not, then the program would skip over steps 70and 72 and proceed directly back to step 56. If the sender was on thepreferred list, then control would similarly pass to steps 70 and 72 forrepackaging and transmission of the message from the preferred listsender.

FIG. 5 sets forth the method steps carried out by the user's mobile datacommunication device 24 in order to interface to the redirector program12 of the present invention. At step 80 the mobile software is startedand the mobile device 24 is configured to operate with the system of thepresent invention, including, for example, storing the address of theuser's desktop system 10.

At step 82, the mobile device waits for messages and signals 84 to begenerated or received. Assuming that the redirector software 12operating at the user's desktop system 10 is configured to redirect uponreceiving a message from the user's mobile device 24, at step 86 theuser can decide to generate a command message that will startredirection. If the user does so, then at step 88 the redirectionmessage is composed and sent to the desktop system 10 via the wirelessnetwork 22, through the wireless gateway 20, via the Internet 18 to theLAN 14, and is finally routed to the desktop machine 10. In thissituation where the mobile device 24 is sending a message directly tothe desktop system 10, no outer wrapper is added to the message (such asmessage C in FIGS. 1 and 2). In addition to the redirection signal, themobile device 24 could transmit any number of other commands to controlthe operation of the host system, and in particular the redirectorprogram 12.

For example, the mobile 24 could transmit a command to put the hostsystem into the preferred list mode, and then could transmit additionalcommands to add or subtract certain senders from the preferred list. Inthis manner, the mobile device 24 can dynamically limit the amount ofinformation being redirected to it by minimizing the number of senderson the preferred list. Other example commands include: (1) a message tochange the configuration of the host system to enable the mobile device24 to receive and process certain attachments; and (2) a message toinstruct the host system to redirect an entire data item to the mobiledevice in the situation where only a portion of a particular data itemhas been redirected.

Turning back to FIG. 5, if the user signal or message is not a directmessage to the desktop system 10 to begin redirection (or some othercommand), then control is passed to step 90, which determines if amessage has been received. If a message is received by the mobile, andit is a message from the user's desktop 10, as determined at step 92,then at step 94 a desktop redirection flag is set “on” for this message,and control passes to step 96 where the outer envelope is removed.Following step 96, or in the situation where the message is not from theuser's desktop, as determined at step 92, control passes to step 98,which displays the message for the user on the mobile device's display.The mobile unit 24 then returns to step 82 and waits for additionalmessages or signals.

If the mobile device 24 determines that a message has not been receivedat step 90, then control passes to step 100, where the mobile determineswhether there is a message to send. If not, then the mobile unit returnsto step 82 and waits for additional messages or signals. If there is atleast one message to send, then at step 102 the mobile determineswhether it is a reply message to a message that was received by themobile unit. If the message to send is a reply message, then at step108, the mobile determines whether the desktop redirection flag is onfor this message. If the redirection flag is not on, then at step 106the reply message is simply transmitted from the mobile device to thedestination address via the wireless network 22. If, however, theredirection flag is on, then at step 110 the reply message is repackagedwith the outer envelope having the addressing information of the user'sdesktop system 10, and the repackaged message is then transmitted to thedesktop system 10 at step 106. As described above, the redirectorprogram 12 executing at the desktop system then strips the outerenvelope and routes the reply message to the appropriate destinationaddress using the address of the desktop system as the “from” field, sothat to the recipient of the redirected message, it appears as though itoriginated from the user's desktop system rather than the mobile datacommunication device.

If, at step 102, the mobile determines that the message is not a replymessage, but an original message, then control passes to step 104, wherethe mobile determines if the user is using the redirector software 12 atthe desktop system 10, by checking the mobile unit's configuration. Ifthe user is not using the redirector software 12, then the message issimply transmitted to the destination address at step 106. If, however,the mobile determines that the user is using the redirector software 12at the desktop system 10, then control passes to step 110, where theouter envelope is added to the message. The repackaged original messageis then transmitted to the desktop system 10 at step 106, which, asdescribed previously, strips the outer envelope and routes the messageto the correct destination. Following transmission of the message atstep 106, control of the mobile returns to step 82 and waits foradditional messages or signals.

FIG. 6 sets forth a system for redirecting messages having attachments200, preferably using the redirector program discussed above. Thissystem preferably includes a desktop system 214A, which is associatedwith a mobile data communication device 214B, a host system 402, a relaysystem 410, and a plurality of attachment displayers 416. The hostsystem includes a datagram component 202A, a redirector program 202B,and an attachment processing component 202C. The datagram component 202Ais used to communicate datagrams 200 (i.e., messages or other types ofinformation) between the host system 202 and the desktop system 214A.The host system 202 could be similar to the server 11 shown above inFIG. 2, in which case the host 202 and the desktop 214A would be coupledvia a LAN. Alternatively, however, the host 202 could be remote from thedesktop 214A, and could be coupled to it via a LAN, WAN, the Internet208, a wireless network (not shown), a cable TV network, a satellitenetwork, or any other type of communication medium. The redirectorprogram 202B is similar to the redirector software described above. Theattachment processing component 202C provides the functionalitydescribed below with reference to FIGS. 7-8.

The host system 202 is separated from any external networks by afirewall system 206. Firewall systems 206 are known in this field, andprovide a security function for protecting an internal corporate networkfrom any external networks. The firewall 206 is, in turn, connected toan external network 208, such as the Internet, which is in turnconnected to a relay system 210 and then to the wireless network 212. Asnoted above, the wireless network 212 could be any type of digital oranalog wireless communication network, such as a packet data network, acellular network, a digital cellular network, a satellite network, amicrowave network, etc.

The mobile data communication device 214B is configured to operate onthe wireless network 212. In addition, the mobile data communicationdevice 214B is preferably configured to operate on one or moreshort-range wireless frequencies in order to wirelessly communicateinformation 215A, 215B between the mobile device 214B and the attachmentdisplayers 216. The mobile device 214B and the attachment displayers 216could be Bluetooth®-enabled devices for communicating at the short-rangefrequencies associated with the Bluetooth wireless standard. Othershort-range wireless standards could also be utilized. The frequenciesat which the short-range communication link operate could be RF,microwave, cellular, optical, or Infrared frequencies. The attachmentdisplayers 216 are used by the mobile device 214B to process theattachment element 200B of the datagram 200, and may be one or more ofthe following devices: printers, fax machines, telephones, cellularphones, copying machines, video display, or any other type of devicecapable of processing an attachment.

In the system shown in FIG. 6, a datagram with an attached file 200 issent to the host system 202. The host system 202 then sends the datagramwith the attachment 200 intact to the desktop 204A of the recipient ofthe datagram 200 via the datagram component 202A. The datagram component202A recognizes the recipient address in the datagram 200 andsubsequently forwards the datagram 200 on to the desktop system 214A.The redirector component 202B of the host system 202B also sends thedatagram 200A, stripped of the attachment 200B, through the hostfirewall 206 to the relay 210 and then on to the mobile device 214B viathe Internet 208 and the wireless network 212. In a preferredembodiment, the attachment 200B is not initially redirected by the hostsystem 202 when the datagram 200A is redirected. Alternatively, it ispossible that automatic forwarding of attachments is possible;especially if the attachment is in a format that can be handled by themobile device. The datagram 200A contains the original message and alsocontains information about the attachment 200B, such as the file name,size, and file type.

In a preferred embodiment, after the datagram 200A (minus the attachment200B) is received at the mobile device 214B, the mobile device 214B willreceive a command either from the host system 202 or from the user ofthe mobile device to find an attachment displayer 216 within itsvicinity to process the attachment 200B. Alternatively, the mobiledevice 214B or user may automatically attempt to find an attachmentdisplayer when the datagram 200A is received. Preferably through shortrange wireless communication 215A, 215B, the mobile device 214B willquery 215A attachment displayers 216 in the local area of the mobiledevice 214B to determine whether they can process the attachment 200B.The attachment displayers 216 will then send back 215B to the mobiledevice 214B information pertaining to their location, electronicaddress, and the type of attachment files they can handle. The mobiledevice then processes this information regarding the attachmentdisplayers 216, and sends the host system 202 an attachment displayerchoice to use with the attachment 200B. The attachment component 202C ofthe host system receives the attachment displayer choice from the mobiledevice 214B, and will then send the attachment 200B to the chosenattachment displayer either through the wireless network 212, directlythrough the Internet 208, via a LAN connection, via a telephone orcellular connection, or via any other type of connection as specified bythe information provided from the chosen attachment displayer 216.

In an alternative embodiment of this system, the attachment component202C of the host system 202 would contain a database of attachmentdisplayers 216 to which it sends attachments 200B by default dependingon the file type. This database would include such information asdisplayer location, compatibility, and security. In this embodiment ofthe system, the mobile device does not chose the attachment displayer216 in real-time, although the user may configure the system in advanceto use a particular attachment displayer 216 contained in the database.Alternatively, the host system 202 may prompt the user of the mobiledevice 214B to select from a list of potential attachment displayers216, or the host may actively determine the location of the mobiledevice 214B, and then present a list of potential attachment displayers216 for selection by the user based upon positioning information of themobile device in relation to the potential attachment displayers 216.

FIG. 7 is a flow diagram setting forth a method of redirecting a messageattachment to an attachment displayer 216 that is identified by themobile device 214B. In step 220, the datagram with an attachment 200 isreceived by the host system 202. The redirector component 202B of thehost system 202 sends the datagram 200A to the mobile 214B withinformation about the attachment in step 222. Note that prior to thisstep, the attachment 200B is separated from the datagram 200, and is notdirectly transmitted to the mobile 214B along with the message portionof the datagram 200A. In step 224, the mobile device 214B is instructedto detect the availability of attachment displayers 216 in its localarea. This step could be accomplished automatically when the datagram200A is received, or it could be initiated through a menu selection bythe user of the mobile device 214B. Preferably, this step 224 is carriedout using a short-range wireless exchange 215A, 215B between the mobiledevice 214B and nearby attachment displayers 216.

Having obtained this information about the available attachmentdisplayers 216, the mobile device 214B in this step 224 then transmitsthe availability information to the host system 202. In step 226, thehost 202 determines whether the attachment 200B is a compatible formatfor at least one of the attachment displayers 216 that were discoveredin step 224. If a compatible attachment displayer is found, then thisdevice is selected for processing the attachment 200B. If a compatibledevice is not found, however, then in step 228 the attachment 200B isconverted into a suitable format by the host system 202 for one of thediscovered attachment displayers 216. In step 230, the attachmentdisplayer 216 selected by the host system 202 then sends the mobiledevice 214B its electronic routing address. This electronic address canbe an IP address, a telephone number, or a machine address. The mobiledevice 214B then sends the routing address of the attachment displayer216 back to the host system 202 in step 232. In step 234, the attachmentcomponent 202C of the host system 202 uses the routing address toredirect the converted attachment 200B to the selected attachmentdisplayer 216. The host system 202 then notifies the mobile device 214B,in step 236 that the attachment 200B has been redirected to theattachment displayer 216.

Alternatively to the method described in FIG. 7, instead of the hostsystem 202 selecting the appropriate attachment displayer 216, theselection could be made at the mobile device 214B. For example, knowingthe type of attachment at the mobile device 214B, which could beprovided in the datagram 200A, and having discovered the availableattachment displayers 216, the mobile device 214B could then select theappropriate attachment displayer 216, either automatically or based oninput from the user of the mobile device 214B. Electronic addressinformation of the selected attachment displayer 216 would then berouted to the host system 202, which would then transmit the attachment200B directly to the selected attachment displayer 216 by whatevernetwork connection is appropriate.

FIG. 8 is a flow diagram setting forth a method of redirecting a messageattachment to an attachment displayer 216, where the attachmentdisplayer 26 is identified by the host system 202. In step 240, the hostsystem 202 receives a datagram 200 with an attachment. The redirectorcomponent 202B sends the datagram (minus the attachment) 200A to themobile 214B with information about the attachment in step 242. In step244, the host system 202 determines the attachment format type. From adatabase of attachment displayers 216 coupled to the attachmentcomponent 202C of the host system 202, the host system 202 will matchthe attachment format type with a suitable attachment displayer 216 instep 246. In step 250, the host 202 redirects the attachment 200B to theselected attachment displayer 216 based on the information in theattachment component database. In step 252, the host sends anotification to the mobile device 214B when the attachment has beenredirected and at which attachment displayer 216 the attachment will beavailable.

If the attachment is not compatible with any of the attachmentdisplayers 216 in the attachment component database in step 248, thenthe host 202 may query the mobile device 214B in step 254. In step 256the mobile device 214B interrogates attachment displayers 216 within themobile device's vicinity, preferably via a short-range wirelesscommunication exchange 215A, 215B. The mobile device 214B then displaysthe information that the responsive attachment displayers 216 sent backto the device 214B in step 258. This information can include routingaddress, compatibility and physical location. The user of the mobiledevice 214B may then make the selection of the attachment displayer 216in step 260. In step 262, the mobile device 214B then sends the hostsystem 202 the selection of the attachment displayer 216 including therouting information for the selected device 216.

Alternatively, the host system 202 may make the selection of theappropriate attachment displayer 216 using location information of themobile device 214B. This location information 4 can be derived basedupon communications between the mobile device 214B and the wirelessnetwork 212, or it can be based upon a query of the mobile device 214Bto transmit its location information to the host system 202, which maybe obtainable by a variety of methods, such as an internal GPS receive,a triangulation methodology with a plurality of base stations of thewireless network, etc. In any event, the host system 202 uses the mobiledevice's location information to select the most appropriate attachmentdisplayer 216 by first selecting the attachment displayers 216 in thedatabase of displayers that are capable of processing the transactionand then by comparing location information of the selected displayers216 with the location information of the mobile device 214B.

An alternative embodiment to FIG. 6 is illustrated in FIG. 10. FIG. 10sets forth a system for redirecting messages having attachments 200,preferably using the redirector program discussed above. This systempreferably includes an attachment processing component 202C thatprovides the additional functionality described below. The attachmentprocessing component 202C converts attachments 200B into one or moreformats that are acceptable for the mobile device 214B, prior totransmission to the mobile device 214B, such that the mobile device 214Bcan display the attachment 202B to the user thereby not requiring theuse of attachment displayers 216. In this manner, the attachmentdisplayers may be circumvented. However, in this case the wirelessnetwork 212 preferably is robust and has a large bandwidth toaccommodate large attachment transmissions.

In one embodiment of the attachment processing component 202C,attachments are “trimmed” in that only a portion of the attachment 200Bis sent to the mobile device 214B. If the user after viewing theattachment desires to see the rest of the attachment, then the user maysend a command to push the remaining portion of the attachment to themobile device 214B. Alternatively, the user may request the attachmentto be sent to an attachment displayer 216. When the attachmentprocessing component 202C converts the attachments, the convertedattachment is preferably compressed in size and may be encrypted. Thepackaging of the attachments, if needed, is accomplished as discussedabove. Advantageously, the processing and overhead associated withconversions from a plurality of attachment formats to one or more commonformats compatible with the mobile device 214B is accomplished at thehost system 202.

Having described in detail the preferred embodiments of the presentinvention, including the preferred methods of operation, it is to beunderstood that this operation could be carried out with differentelements and steps. This preferred embodiment is presented only by wayof example and is not meant to limit the scope of the present inventionwhich is defined by the following claims.

1. A mobile data communication device, comprising: means for generatinga command towards a redirector component associated with a messagingsystem to initiate redirection of user data items over a wirelessnetwork for a user associated with the mobile data communication device;means for receiving at least a portion of a data item redirected fromthe messaging system over the wireless network; and means for generatinga request towards the redirector component for more of the data item. 2.The mobile data communication device as recited in claim 1, furthercomprising means for processing an attachment associated with the dataitem, the attachment being received in response to the request.
 3. Themobile data communication device as recited in claim 2, wherein theattachment comprises at least one of a text document, a videoattachment, an audio attachment, an image attachment.